.\" Copyright (c) 2018-2020 Robin Getz
.\" Copyright (c) 2018-2020 Analog Devices Inc.
.\"
.\" %%%LICENSE_START(GPLv2+_DOC_FULL)
.\" This is free documentation; you can redistribute it and/or
.\" modify it under the terms of the GNU General Public License as
.\" published by the Free Software Foundation; either version 2 of
.\" the License, or (at your option) any later version.
.\"
.\" The GNU General Public License's references to "object code"
.\" and "executables" are to be interpreted as the output of any
.\" document formatting or typesetting system, including
.\" intermediate and printed output.
.\"
.\" This manual is distributed in the hope that it will be useful,
.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
.\" GNU General Public License for more details.
.\"
.\" You should have received a copy of the GNU General Public
.\" License along with this manual; if not, see
.\" <http://www.gnu.org/licenses/>.
.\" %%%LICENSE_END
.\"
.TH iio_attr 1 "@CMAKE_DATE@" "libiio-@LIBIIO_VERSION_MAJOR@.@LIBIIO_VERSION_MINOR@" "LibIIO Utilities"
.IX iio_attr
.SH NAME
iio_attr \- list IIO devices, and read/write device attributes
.SH SYNOPSIS
.B iio_attr
[
.I options
]
-d [device] [attr] [value]
.br
.B iio_attr
[
.I options
]
-c [device] [channel] [attr] [value]
.br
.B iio_attr
[
.I options
]
-D [device] [attr] [value]
.br
.B iio_attr
[
.I options
]
-C [attr]
.br
.B iio_attr
-S <arg>
.br
.B iio_attr
-h

.SH DESCRIPTION
.B iio_attr
is a utility for displaying information about local or remote IIO devices.
By providing an optional value,
.B iio_attr
will attempt to write the new value to the attribute.

.SH COMMANDS
.TP
The iio_attr utility has a few main options, which control what the main utility of the application is.
.TP
.B \-d, \-\-device-attr
Read and Write IIO device attributes
.TP
.B \-c \-\-channel-attr
Read and Write IIO channel attributes
.TP
.B \-B \-\-buffer-attr
Read and Write IIO Buffer attributes
.TP
.B \-C \-\-context-attr
Read and Write IIO Context attributes
.TP
.B \-D \-\-debug-attr
Read and Write IIO Debug attributes
.TP
.B \-S, \-\-Scan
Scan for available IIO contexts, optional arg of specific backend(s) 'ip', 'usb' or 'ip:usb'. If no argument is given, it checks all that are availble.
.TP
.B \-h, \-\-help
Tells
.I iio_attr
to display some help, and then quit.

.SH OPTIONS
.TP
.B \-a, \-\-auto
Look around for devices (locally, ip, and usb), and if there is only one device
found, connect to it.
.TP
.B \-u, \-\-uri
The Uniform Resource Identifier
.I (uri)
for connecting to devices, can be one of:
.RS
.IP ip:[address]
network address, either numeric (192.168.0.1) or network hostname (pluto.local)
.IP ip:
blank, if compiled with zeroconf support, will find an IIO device on network
.IP usb:[device:port:instance]
normally returned from
.B iio_info -s
or
.B iio_attr -S
.IP usb:
blank, if there is only one IIO device plugged into USB, find it, and attach to it.
.IP serial:[port],[baud],[config]
serial configuration, serial:/dev/ttyUSB0,115200,8n1 115200 baud, 8 data bits, no partity, one stop bit
.IP local:
with no address part
.RE
.TP
.B \-i, \-\-input-channel
Filters channels by input channels only
.TP
.B \-o, \-\-output-channel
Filters channels by output channels only
.TP
.B \-s, \-\-scan-channel
Filters channels by scan channels only
.TP
.B \-I, \-\-ignore-case
When pattern matching devices, channels or attributes, ignore case
.TP
.B \-g, \-\-generate-code <arg>
Generate small C or python snippets that emulate what you are doing on the command line. Argument is a file name 'foo.c' or 'foo.py'
.TP
.SH RETURN VALUE
If the specified device is not found, a non-zero exit code is returned.

.SH "SEE ALSO"
.ad l
.BR iio_attr (1),
.BR iio_info (1),
.BR iio_readdev (1),
.BR iio_reg (1),
.BR iio_writedev (1),
.BR libiio (3)
.PP
libiio home page:
.BR \%https://wiki.analog.com/resources/tools-software/linux-software/libiio
.PP
libiio code:
.BR \%https://github.com/analogdevicesinc/libiio
.PP
Doxygen for libiio
.BR \%https://analogdevicesinc.github.io/libiio/
.SH BUGS
All bugs are tracked at:
.BR \%https://github.com/analogdevicesinc/libiio/issues
